import axios from "axios"


const service = axios.create({
	timeout: 5000 // 请求超时时间
});

// request拦截器   request即是请求发送出去的数据监测
service.interceptors.request.use(config => {
	// if(localStorage.getItem('token')) {
	// 	config.headers['access-token'] = localStorage.getItem('token'); // 让每个请求携带token--['X-Token']为自定义key 请根据实际情况自行修改
    // }
    // console.log("data",config)
	return config;
}, error => {
	// Do something with request error
//	console.log(error); // for debug
	Promise.reject(error);
})


// respone拦截器   // 对服务器返回的数据监测
service.interceptors.response.use(
	response => {
		/**
		 * 下面的注释为通过response自定义code来标示请求状态，当code返回如下情况为权限有问题，登出并返回到登录页
		 * 如通过xmlhttprequest 状态码标识 逻辑可写在下面error中
		 */
		const res = response.data;
		// if(response.data.code != 0 || response.data.code != 1000) {
		// 	alert(response.data.msg);
		// } else {
		return response.data;
		// }
	},
	error => {
		let httpStatus = error.response.status;
		switch (httpStatus) {
			case 401:
				console.log('401错误请重新刷新页面'); // for debug
				return Promise.reject(error);
				break;
			case 404:
				console.dir(error); // for debug
				break;
			default:
				break;
		}
	}
);

export default service;